package sicnu.cs.ich.security.service;

import sicnu.cs.ich.api.domain.form.RoleForm;
import sicnu.cs.ich.security.domain.entity.Role;

import java.util.List;

/**
 * @author 沈洋 邮箱:1845973183@qq.com
 * @create 2021/12/7-18:50
 **/
public interface IRoleService {
    Role getRole(Integer roleId);

    /**
     * 获取用户角色信息
     * @param userId 用户id
     */
    List<Role> getUserRole(Integer userId);

    /**
     * 获取所有角色信息
     */
    List<Role> getRoles();

    /**
     * 添加新角色
     * @param roleForm 角色
     */
    boolean addRole(RoleForm roleForm);

    /**
     * 判断角色是否存在
     * @param role 角色名
     */
    boolean isRoleExisted(String role);

    /**
     * 删除角色信息
     * 关联角色置为ROLE_PERSON
     */
    boolean deleteRole(Integer roleId);
}
